# Preface : Nilkins Images

## Presentation

The Nilkins Images component provides tools to encode, decode and work on images. With a mindset oriented towards graphics, it also allows to specify and respect tight memory alignment.

You can use it to decode different format :

- Bmp

- Non compressed
- Compressed using bit fields

- Dds

- Supports 2D textures, texture arrays, and cube maps
- Also supports bit masked formats

- Hdr

- With adaptive RLE encoding
- RGBE format

- Jpg

- YUV 4:4:4, 4:2:2, 4:2:0
- Monochromatic Y
- Baseline Huffman encoding

Byte alignment constraints can be specified over pixels, rows and slices. It is also possible to force or not an alpha channel in the output format. This can be useful, for instance for graphics API requiring specific alignments or formats in memory.

nkImages is used by all components requiring image parsing. More formats are planned in the future. Stay tuned !